Ana içeriğe geç

Linear Arama

Lineer arama algoritması, bir dizide belirli bir öğenin konumunu bulmak için kullanılan basit bir arama algoritmasıdır. Algoritma, verilen bir dizideki her öğeyi tek tek karşılaştırarak aranan öğeyi bulur.

bilgi

Lineer arama, dizinin boyutuna bağlı olarak zaman karmaşıklığı açısından O(n) olarak değerlendirilmektedir.

Aşağıdaki C kodu, bir dizi içinde aranan bir öğenin konumunu bulmak için lineer arama algoritmasını göstermektedir:

#include <stdio.h>

int linear_search(int arr[], int size, int key) {
for (int i = 0; i < size; i++) {
if (arr[i] == key) {
return i; // öğe bulunduğunda konumunu döndürür
}
}
return -1; // öğe bulunamadığında -1 döndürür
}

int main() {
int arr[] = {1, 2, 3, 4, 5, 6};
int size = sizeof(arr) / sizeof(arr[0]);
int key = 4;

int result = linear_search(arr, size, key);

if (result == -1) {
printf("Öğe bulunamadı.");
} else {
printf("Öğe %d konumunda bulundu.", result);
}
return 0;
}
not

Bu kod örneğinde, linear_search fonksiyonu, arr dizisinde size boyutunda aranan key öğesini bulmak için kullanılır.

Fonksiyon, dizinin her öğesini tek tek karşılaştırır ve öğe bulunursa bulunan öğenin konumunu döndürür. Eğer öğe bulunamazsa, fonksiyon -1 değerini döndürür.

ipucu

Arama işlemi sırasında bulunamayan bir öğe için kullanıcıya anlamlı bir geri bildirim sağlamak her zaman iyi bir uygulamadır.

main fonksiyonu, örnek bir dizi ve aranacak öğe belirler ve linear_search fonksiyonunu kullanarak öğenin konumunu bulur. Eğer öğe bulunamazsa "Öğe bulunamadı." çıktısı verilir, bulunursa "Öğe <konum> konumunda bulundu." şeklinde çıktı verilir.